/*
 * BiHash.h
 *
 *  Created on: Dec 4, 2014
 *      Author: ale
 */
#include <fstream>
#include <stdio.h>
#include <stdlib.h>
#include <iostream>
#include <string>
#include <map>
#include <sparsehash/sparse_hash_map>
using namespace std;

#ifndef PRED_BIHASH_H_
#define PRED_BIHASH_H_

class BiHash {
public:
	BiHash(double prob, double backoff);
	virtual ~BiHash();

	void agregarTrigrama(string tercer_palabra, float prob);
	double obtenerProbabilidad(){return probabilidad;}
	double obtenerBackOff(){ return backoff;}

	google::sparse_hash_map<std::string, double> *trigramas;

private:
	//Un hash con sus trigramas y su probabilidad

	double probabilidad; //del bigrama
	double backoff; //del bigrama

};

#endif /* PRED_BIHASH_H_ */
